home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1 / Nebula One.iso / Mail / pine3.92 / contrib / keypad.enable / keypad.enable.diff next >
Text File  |  1996-02-10  |  3KB  |  123 lines

  1. *** pine/ttyout.c.REAL    Thu Dec 21 02:08:20 1995
  2. --- pine/ttyout.c    Sat Feb 10 15:47:12 1996
  3. ***************
  4. *** 131,137 ****
  5.               *_startinsert, *_endinsert, *_insertchar, *_deletechar,
  6.               *_deleteline, *_insertline,
  7.               *_scrollregion, *_scrollup, *_scrolldown,
  8. !             *_termcap_init, *_termcap_end;
  9.   char  term_name[40];
  10.   #ifndef USE_TERMINFO
  11.   static char  _terminal[1024];         /* Storage for terminal entry */
  12. --- 131,138 ----
  13.               *_startinsert, *_endinsert, *_insertchar, *_deletechar,
  14.               *_deleteline, *_insertline,
  15.               *_scrollregion, *_scrollup, *_scrolldown,
  16. !             *_termcap_init, *_termcap_end,
  17. !         *_keypad_init, *_keypad_end;
  18.   char  term_name[40];
  19.   #ifndef USE_TERMINFO
  20.   static char  _terminal[1024];         /* Storage for terminal entry */
  21. ***************
  22. *** 228,233 ****
  23. --- 229,236 ----
  24.       _termcap_end       = tigetstr("rmcup");
  25.       _lines           = tigetnum("lines");
  26.       _columns           = tigetnum("cols");
  27. +     _keypad_init       = tigetnum("smkx");
  28. +     _keypad_end           = tigetnum("rmkx");
  29.       _ku                = tigetstr("kcuu1");
  30.       _kd                = tigetstr("kcud1");
  31.       _kl                = tigetstr("kcub1");
  32. ***************
  33. *** 295,300 ****
  34. --- 298,305 ----
  35.       _termcap_end       = tgetstr("te", &ptr);
  36.       _lines           = tgetnum("li");
  37.       _columns           = tgetnum("co");
  38. +     _keypad_init       = tgetstr("ks", &ptr);
  39. +     _keypad_end           = tgetstr("ke", &ptr);
  40.       _ku                = tgetstr("ku", &ptr);
  41.       _kd                = tgetstr("kd", &ptr);
  42.       _kl                = tgetstr("kl", &ptr);
  43. ***************
  44. *** 435,440 ****
  45. --- 440,448 ----
  46.       BeginScroll(0, ps_global->ttyo->screen_rows);
  47.       fflush(stdout);
  48.       }
  49. +     if(_keypad_init)
  50. +       tputs(_keypad_init, 1, outchar);
  51.   }
  52.           
  53.   
  54. ***************
  55. *** 510,515 ****
  56. --- 518,526 ----
  57.       MoveCursor(_lines - 2, 0);
  58.       if(_termcap_end != NULL)
  59.         tputs(_termcap_end, 1, outchar);
  60. +     if(_keypad_end != NULL)
  61. +       tputs(_keypad_end, 1, outchar);
  62.   
  63.       if(message){
  64.       StartInverse();
  65. *** pico/tcap.c.REAL    Thu Dec 21 01:54:35 1995
  66. --- pico/tcap.c    Sat Feb 10 16:08:47 1996
  67. ***************
  68. *** 92,98 ****
  69.       *SF,            /* scroll text up */
  70.       *SR,            /* scroll text down */
  71.       *TI,            /* string to start termcap */
  72. !         *TE;            /* string to end termcap */
  73.   
  74.   
  75.   TERM term = {
  76. --- 92,100 ----
  77.       *SF,            /* scroll text up */
  78.       *SR,            /* scroll text down */
  79.       *TI,            /* string to start termcap */
  80. !         *TE,            /* string to end termcap */
  81. !     *KS,            /* string to enter application keypad mode */
  82. !     *KE;            /* string to end application keypad mode */
  83.   
  84.   
  85.   TERM term = {
  86. ***************
  87. *** 178,183 ****
  88. --- 180,187 ----
  89.       SR = tgetstr("sr", &p);
  90.       TI = tgetstr("ti", &p);
  91.       TE = tgetstr("te", &p);
  92. +     KS = tgetstr("ks", &p);
  93. +     KE = tgetstr("ke", &p);
  94.   
  95.       row = tgetnum("li");
  96.       if(row == -1){
  97. ***************
  98. *** 399,404 ****
  99. --- 403,411 ----
  100.       if (CS)
  101.         putpad(tgoto(CS, term.t_nrow, 0)) ;
  102.       }
  103. +     if(KS && !Pmaster)            /* enter app/keypad mode (cursor) */
  104. +       putpad(KS);
  105.   }
  106.   
  107.   
  108. ***************
  109. *** 410,415 ****
  110. --- 417,425 ----
  111.   
  112.       if(TE)                /* any cleanup termcap requires */
  113.         putpad(TE);
  114. +     if(KE)
  115. +       putpad(KE);            /* end app/keypad mode */
  116.       }
  117.   
  118.       kbdestroy(pico_kbesc);        /* clean up key board sequence trie */
  119.